home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Support Library
/
RoseWare - Network Support Library.iso
/
btrieve
/
btr500.exe
/
BUGS.500
< prev
next >
Wrap
Text File
|
1992-01-02
|
13KB
|
331 lines
This file contains patch/bug descriptions for the following components:
Btrieve - Single user, DOS network, OS/2, VAP environments
Bconsole
Brequest
Butil for OS/2
===============================================================================
BTRIEVE & BSERVER(VAP) BUGS
0. All versions
This is NOT a bug fix; it simply changes the version number 5.00 to latest
one in the copyright message.
1. Btrieve Single
A cluster is lost when a record is inserted and then the application is
aborted without closing the file.
2. Bserver(vap)
This fixes a bug which can appear as status 2 or status 3 under the
following circumstances:
a. a station has executed a trans. end or trans. abort and as a result
has released a file lock on a file (say F1)
b. another station PRIOR to this has closed a file (say F2) which was
opened earlier than F1
c. an operation is being done on F1 on any station.
3. Bserver(vap)
If a file which is flagged as TTS transactional is modified then this
can cause problems like status 3, lock-up on the server, or other strange
behavior.
This patch is a MUST if you use TTS transactional files !!!!!!!!!
4. Bserver(vap)
On some peculiar hardware (used as server) the "uninitialized" area
actually is initialized to some special character combination. This
results status 91 on the workstation.
5. Btrieve/N (DOS 3.1 networks) and Single
This patch is a MUST !!!!!!!!!!
Files could be corrupted (usually data) as a result of a corrupted
pre-image file.
This error can occur in different situation, for example :
- single user,using less than DOS 3.1 and within a transaction
inserting or deleting several records into a file (number
depends on pagesize and and record size) result status 3 or 15
- it less frequent in Network version but it can occur.
6. Btrieve/N (DOS 3.1 networks) and Single
Status 2 is returned on a get_equal with lock after a transaction has
occurred that does not write to any of the files but touches 18 of them.
7. Btrieve/N (DOS 3.1 networks)
This bug patch is replaced by patch #20 (see below).
8. Bserver (vap)
Same file can be open in accelerated mode or in exclusive mode simul-
taniously.
9. Btrieve/N (DOS 3.1 networks)
File corruption may occur during certain critical timing intervals. This
will only happen in a heavily loaded system with a btrieve file with many
keys. One station does insert, update, or delete of a record taking enough
time for other stations just reading records to time out (20 or 30 network
requests) and continues with the read. One of the stations which timed out
must read the same page the updating station is currently changing. The
subsequent operation from the timed out station must update this same page
This patch will force the subsequent update to reread the updated page.
(NOTE:
a. This patch uses SET DIRECTORY operation space, thus any programs
which use the function will need to be changed because it will return
a status 1.
b. This inconvenience was eliminated by a later Patch #15 on 03/09/89.)
10. Btrieve Single
Status 16 is returned when inserting a record which causes the expansion
of a file. (This bug occurs only if DOS 3.30 or higher used)
11. Btrieve Single and Btrieve/N (DOS 3.1 networks)
Updating a key-field OTHER THAN the current key-path and then executing
a get next or get previous WITHOUT changing key-path returns status 9.
This patch was modified 3/6/89 to include another case that was not
previously trapped.
12. Btrieve Single and Btrieve/N (DOS 3.1 networks)
Updating the value of the current key-path to a value which already
occurs in the file (of course this can be done only in case of duplicate
key) and then executing a get previous returns status 9.
13. Btrieve Single and Btrieve/N (DOS 3.1 networks)
When inserting a variable length record which has an autoincrement key and
this key is set to 0 (i.e. using the "auto" feature) then variable part of
the record is lost (stored but can not be recovered).
14. Btrieve Single and Btrieve/N (DOS 3.1 networks)
Autoincrement key with 4-byte length is not rolling over automatically
when the lower order 2 bytes contain the max value (FFFFh) and the next
key is inserted using the "auto" feature (returns status 5 instead).
15. Btrieve/N (DOS 3.1 networks)
Eliminates the inconvenience introduced by Patch #9 and the SET DIRECTORY
operation is now again available.
16. Btrieve Single and Btrieve/N (DOS 3.1 networks), Bserver (vap)
A GET operation can return an erroneous status 22 reading from a comp-
ressed file if the previous operation was an INSERT into a file with
truncation.
17. Bserver (vap)
A GET operation which uses a key value (lt, le, eq, ge, gt) returns a wrong
status 21 for key-only files.
18. Btrieve Single and Btrieve/N (DOS 3.1 networks), Bserver (vap)
Get version operation returns incorrect value if previously a GET operation
which uses a key value (lt, le, eq, ge, gt) in case of a key-only file
with a segmented-key has been executed.
19. Btrieve Single and Btrieve/N (DOS 3.1 networks), Bserver (vap)
Stat operation does not return correctly bit 2 in the file flag which
shows if the file has had pre-allocated pages.
20. Btrieve/N (DOS 3.1 networks)
Some anomalies occur when using UNLOCK operation:
- single lock
if keynumber = -2 it returns status 0 but lock not
released (should return 81)
if keynumber < -2 it return status 0 and releases lock
(it really should not)
- multiple locks
if keynumber < -2 or > -1
it returns status 0 but no lock is
released (should return 81).
21. Btrieve OS/2
Random errors occur with local variables of applications (Btrieve stack
switching is not done in time).
22. Bserver (vap)
Same description as at Bug #13.
23. Bserver (vap)
Same description as at Bug #14.
24. Bserver (vap)
If the workstation(s) have a large number of files open (20 or possibly
less, depending how many pre-image file have been open by Btrieve) and
one (or more) of the work station(s) access record(s) in transaction(s),
then Netware's FCONSOLE can show file(s) open even though the work-
station(s) properly have closed the files (or issued Btrieve RESETs) and
BCONSOLE does not show the file(s) open. Another side effect of this
bug could be a STATUS 3 if a file which is shown open on FCONSOLE is re-
opened and re-accessed in a transaction.
25. Bserver (vap)
The user 's buffer is not updated after an insert containing an autoinc
field (this is only important if the user specifies 0 value for the
autoinc field because then he wants to know what value was really set
into the field by Btrieve).
26. All versions
If a file is larger than 64K then the STEP LAST operation returns either
not physically the last record (and therefore a following STEP NEXT will
not return status 9) or returns an erroneous status 9 immediately.
27. Btrieve/N (DOS 3.1 networks)
If multiple records are locked on non-network file(s) and then these
records are deleted then the locks are not dropped from Btrieve's inter-
nal table so a lock request can come back with status 81 indicating that
the lock table is full.
28. Bserver (vap)
This patch eliminates erroneous status 3's caused by files with 24 keys/
segments.
29. Bserver (vap)
This patch eliminates status 25 on a create or status 12 on an open if
the server/directory name contains periods.
30. Bserver (vap)
This bug will appear only if someone is using XTRIEVE. (XTRIEVE will
return an erronious status 43 for some complex restricted BROWSE).
31. Btrieve Single and Btrieve/N (DOS 3.1 networks), Bserver (vap)
Incorrect status (59) returned if a file is created using key number = -1
(i.e. create only if file does not exist) and the file name provided in
the key buffer has an invalid path name. (The correct status is 25.)
32. Bserver (vap)
This bug seems to appear only in connection with XTRIEVE. (XTRIEVE will
parse some directory specifications - e.g. './' incorrectly, and can cause
a GPI at the server)
33. Btrieve (OS/2)
Errors returned on CREATE/OPEN when many (more than 70) handles have
been allocated. CREATE creates the file successfully, but stil returns
a status of 25.
34. Bserver (vap)
If an UNLOCK operation inside a transaction returns a non-zero status then
a later CLOSE or RESET operation will close the file(s) successfully as
far as Btrieve is concerned (i.e. B ACTIVE does not show the file(s) open)
but the file(s) remains open on Netware level (i.e. FCONSOLE will show the
file(s) open.
35. Btrieve (OS/2)
Btrieve was allocating the compression/uncompression segments when
/u: option not given. This is also an OS/2 bug. The segments sizes were
given as zero length to DOSALLOCSEG (). OS/2 allocated two 64K segments.
*** (35. is the last patch before 5.0c was cut 11/6/89 dk) ***
36. Bserver (VAP)
The call to InitRecordTime() in SPXManager() results in a call to
GetTimerInterval() which does IN and OUT to port 40h-43h, which is the
timer chip in ISA ATs. However, on Prime's proprietary box this is a
co-processor address and resulted in a system crash. Since this code
is a vestige of past performance testing, it is simply removed here by
setting the first bytes of InitRecordTime() and GetTimerInterval() to
RET (C3h).
37. Btrieve/N (DOS 3.1 networks)
Btrieve might hang if a other TSR program is using it.
38. Bserver (VAP)
When all workstations are shut down on an ArcNet network, the VAP
operating system returns an error to all VAPs using the Service
Advertising Protocol. This causes Bserver to issue an Error-Log message
of "Send Failure in Advertiser". This patch is normally commented-out,
but may be enabled by users who are using Arcnet or who find their
error logs clogged up on other networks which really experience network
errors.
Last update: 03/08/90
===============================================================================
BTRIEVE BCONSOLE BUGS
1. v5.0
If the number of mapped drives exceeds 20, BCONSOLE will return
an initialization error.
Last update: 10/20/89
===============================================================================
BTRIEVE REQUESTER BUGS
1. When multiple requesters are running under DesqView on the same machine,
both would have the same identity, confusing BServer and resulting in
the "Actual received length does not match SRB length", because all the
packets got dumped onto the same queue. This patch uses a dynamically
assigned socket number to distinguish between clients.
This patch is a MUST for DesqView usage!!!!
2. The requester needed to be patched to support the Insert-Autoincrement
mode by returning new key value in the data buffer. Note that no data
is returned on a normal insert call. Note: BSERVER needs to be patched
up to #25.
Last update: 5/24/89
===============================================================================
BTRIEVE BUTIL BUGS
1. OS\2 Only
Sequential files opened during BSAVE and BRECOVER operations were
created as READ-ONLY.
Last update: 5/04/89
===============================================================================